package serv

import (
	"gorm.io/gorm"
	"server/internal/app/model"
	"server/internal/database"
)

var EnterpriseType = new(enterpriseType)

type enterpriseType struct {
	model.EnterpriseType
}

// Reads 列表
func (a enterpriseType) Reads(Db *gorm.DB) (*gorm.DB, []enterpriseType, int64) {
	var list []enterpriseType
	var total int64
	Db.Model(&a).Order("sort").Find(&list).Offset(-1).Count(&total)
	return Db, list, total
}

// Read 单条
func (a enterpriseType) Read(id any) (*gorm.DB, enterpriseType) {
	Db := database.DB
	detail := enterpriseType{}
	Db.Model(&a).Where("id =?", id).First(&detail)

	return Db, detail

}

// Create 新增
func (a enterpriseType) Create(data model.EnterpriseType) *gorm.DB {
	Db := database.DB

	return Db.Create(&data)
}

// Update 编辑
func (a enterpriseType) Update(data model.EnterpriseType) *gorm.DB {
	Db := database.DB

	return Db.Updates(&data)

}

// Delete 删除
func (a enterpriseType) Delete(ids []int) *gorm.DB {
	Db := database.DB

	return Db.Delete(&a, ids)

}
